package com.mdb.open.common.enums.trade.status;
/*
 * Copyright (C), 2017-2019 澳发科技(MDB)
 * FileName: Merchanttatus.java
 * Author:   符楚
 * Date:     2019-06-11 18:21
 * History:
 * <author>          <time>          <version>          <desc>
 * 符楚               2019-06-11          V1.00             新建
 * -----------------------------------------------------------
 * 作者姓名           修改时间           版本号            描述
 */

import com.mdb.bc.api.enums.ApiEnum;
import io.swagger.annotations.ApiModelProperty;

/**
 * 商户<br>
 * <br>
 *
 * @author 符楚
 * @Date 2019-06-11 18:21
 */
public enum MerchantRiskStatusEnum implements ApiEnum<String> {

    @ApiModelProperty(hidden = true)
    APPLY("商户申请"),
    /**
     * AML审核中
     */
    AML_AUDIT("AML审核中"),

    /**
     * 反洗钱拒绝
     */
    AML_REFUSED("反洗钱拒绝"),

    /**
     * 风控模型
     */
    RISK_MODEL("风控模型"),

    /**
     * 审核拒绝
     */
    RISK_MODEL_REFUSED("审核拒绝"),

    /**
     * 正常
     */
    NORMAL("正常"),

    /**
     * 永久拒绝
     */
    PERMANENT_REFUSED("永久拒绝"),

    ;

    String text;

    MerchantRiskStatusEnum(String text) {
        this.text = text;
    }

    @Override
    public String getValue() {
        return this.name();
    }

    @Override
    public String getText() {
        return this.text;
    }

    /**
     * 允许更新的状态
     *
     * @param riskStatusEnum
     * @return
     */
    public static boolean allowUpdate(MerchantRiskStatusEnum riskStatusEnum) {
        if (riskStatusEnum.equals(MerchantRiskStatusEnum.NORMAL)) {
            return true;
        }

        if (riskStatusEnum.equals(MerchantRiskStatusEnum.AML_REFUSED)) {
            return true;
        }

        if (riskStatusEnum.equals(MerchantRiskStatusEnum.RISK_MODEL_REFUSED)) {
            return true;
        }

        return false;
    }
}
